我們先來寫一個簡單的 make
我習慣是用 Bitvise 來執行
首先我們要先寫一個 .c 的 test
touch test.c
vim test.c
在 test.c 中就寫一個 打印 test 的程序
#include<stdio.h>
int main()
{
printf("test \n");
return 0;
}
這樣就完成了 測試的 .c 檔案
接下來就是簡單的 makefile
touch makefile
vim makefile
在 makefile 中寫一個簡單的程序
test:test.o
gcc -o test test.o
test.o:test.c
gcc -o test.o -c test.c
clean:
rm -f test test.o
簡單來講一下 make 的組合
target(要生成的文件): dependencies(被依赖的文件)
<tab> 命令1
<tab> 命令2
.......
先來看看最上面的就是 test:test.o
所以:
test:test.o
gcc -o test test.o
再來就是尋找 dependencies 的生成,下面就寫道 test.o 是用 test.c 生成
test.o:test.c
gcc -o test.o -c test.c
大部分的 make 會先建立目標文件(.o),再去執行各個 .c 檔案
test.o 就是目標文件,test.c 就是剛剛寫的文件,利用 gcc 建立
所以步驟大致上就是:
接下來用 執行 make
make
應該會看到
再來執行
ls
就會多出兩個生成物 test 跟 test.o
其中 test 就是最後生成的檔案
試試看
./test
就可以執行了